Tool Name: Align
Author:    Adspec Programming
Last Revision: Dec 17, 1993;
______________________________________________________________

PURPOSE: To Align selected polys along a path.

Although it may be put to general use for your own creative
ideas, this tool is designed specifically to align extruded fonts
along a path.
______________________________________________________________

RESTRICTIONS:

Does not operate on splines.
Path must be a multisided poly. (see spotopol to convert splines)
Polys must be grouped in separate "objects".
 (See SINGLEGROUP option of the extrude tool.)
______________________________________________________________

USE:

This tool can be used with either a LEFT MOUSE BUTTON
which uses the stored defaults or with the RIGHT MOUSE BUTTON
to change the defaults before use.

The tool is designed to think of positive Z as "UP". You should
work with your extruded letters facing you from a flat Y view.

The path should be drawn from the flat Z view. The path does not
have to be flat, the letters will align with vertical deviations.

The align will center to a point half way along the length of
the path as described under BLANKSPACE below.

If you want an arc that reads from the front, still use this
orientation, but use a Rotate X of 90° (or neg 90°), then use
the normal rotate tool to rotate the arc into position.

NOTE that if you perform the align and the text reads the opposite
way of that you desire, use the escape key to undo it, then use
the TOOLS menu item "Reverse Points" on the path. When you perform
the align again, it will read the way you want.

NOTE that the spacing between the object groups along the align path
is relative to that along the X axis of the groups before the align.
Vertical spacing is kept constant only for the individual groups, so
if you have several lines of text, you must align them in separate
aligns, or they will converge vertically.


SEE PREPARING POLYS below.

______________________________________________________________

TO CHANGE DEFAULTS:
1: Prepare the polys as described in PREPARING POLYS below.
   if you are going to use the PERFORM gadget.
2: Click the RIGHT MOUSE BUTTON on the tool's gadget.
3: Edit the defaults as desired.

If you select the PERFORM gadget, you are prompted to select the
path (polygon) you want to align along. Select it (or use the
escape to cancel). Any selected polys will be aligned.If you do
not like the change, tap the escape key to undo. If you like the
change, use the SET command.


If you select the ACCEPT gadget, the new defaults will be saved
for future use.

If you select the CANCEL gadget, the window closes with no
changes saved.

______________________________________________________________

FOR USE WITH STORED DEFAULTS:

1: Prepare the polys as described in PREPARING POLYS below.
   if you are going to use the PERFORM gadget.
2: Select any polys you wish to extrude.
3: Click the LEFT MOUSE BUTTON on the tool.

You will be prompted to select the path (polygon) you want to
align along. Select it (or escape to cancel).
After a few moments, you will see the polys align at the
currently set defaults. Note that with many polys selected,
this can take some time.

If you do not like the change, tap the escape key to undo.
If you like the change, use the SET command.

______________________________________________________________


LAST PATH SEG:

If ON, the last segment of the path poly will participate in
the align. If OFF, it will not.
______________________________________________________________

BLANKSPACE:

When you select the path poly to align to, the program will
measure its length, then subtract the percentage of this
length you specify here. The polys will then be resized to
fit the remainder of the path length, and moved into position
along this remainder.

NOTE that the polygons are ALWAYS CENTERED to the center of the
path as measured from the path's firstpoint to its lastpoint if
the last path seg is OFF, or back to the firstpoint if the last
path seg is ON.

So if you, for example, have a circle flat in the XY plane, with
its first point at the top of the screen when viewed in the Z flat
view, and have the blankspace set to 0.5 (50 %) the extruded letters
will be fitted to the bottom half of the circle as viewed from
the Z flat view.
______________________________________________________________

ROTATE X,Y,Z:
Specify any angles of rotation you want.

NOTE that the tool is designed to work with the positive Z axis "up".
This makes it easy to generate logos such as that used in the
UNIVERSAL pictures movie header. You may also generate arcs that go
overhead and read properly from the front by specifying an X rotation
of 90°, or negative 90° depending on the side you want to view it from.
After performing the align, you then rotate the aligned letters as
a unit around the X 90° (or -90°) using the standard rotate tool.

Partial rotations are also quite useful for special positioning.
______________________________________________________________

SCALE X,Y,Z:
Specify any scaling values you want. Note that 1.0 is unity, or no
change. 2.0 would be twice, and 0.5 would be half the original size.

Note that the polygon "objects" will automatically be scaled to fit
the length of the path after the blankspace has been subtracted. You
may, however, want to reduce them even more, or enlarge them, in any
of the three axes. This can adjust the "letterspacing", or cause them
to fit the smallest curve in the path better, or even cause them
to overlap for some interesting effects.
______________________________________________________________

PREPARING POLYS:

As you know, "objects" in Aladdin 4D are composed of single polygons.
If the align tool were to align single polygons, the extruded letters
would be reduced to random appearing single polys along the align.

You need to let the program know what you consider to be single
objects.

You do this by grouping.

When the tool runs, it resizes ALL THE SELECTED POLYS IN EACH GROUP it
finds around the group's center, and rotates and translates the group
by its center.

The tool looks in the currently active group level.

This means you do not have to have the extruded letters align, but can
also align complete words, or even phrases if desired.

To group the letters into separate groups, you must select all the
polys that compose a single letter, and group them.

To help you accomplish this, the extrude tool has an option called
SINGLEGROUPS. If on, each selected poly, when extruded will be given
a separate group, along with its extruded shell and cloned face.
NOTE that this is done in GROUP LEVEL 3 ONLY AND ONLY IF YOU HAVE
SINGLEGROUPS ON.

NOTE that you may still have to select and group a few, for instance,
the "stem" and the "dot" of the letter i.

______________________________________________________________

END
